/**
 * 
 */
package be.gwi.alfresco.run.model;

import java.util.Date;

import org.alfresco.service.cmr.repository.NodeRef;

/**
 * Runner bean - This class contains information about a runner
 * 
 * @author gabriel.wilems@gmail.com
 * 
 * @version 1.0
 * @since 1.0
 */
public class Runner {
    private NodeRef nodeRef;
    private String  username;
    private String  name;
    private String  firstName;
    /**
     * The starting date of the first race
     */
    private Date    startDate;
    private Double  runningDistance  = 0.0;
    private Integer runningCount     = 0;
    private Double  cyclingDistance  = 0.0;
    private Integer cyclingCount     = 0;
    private Double  swimmingDistance = 0.0;
    private Integer swimmingCount    = 0;
    private Double  runPoint         = 0.0;
    private Integer runCount         = 0;

    private NodeRef historyNodeRef;

    /*
     * (non-Javadoc)
     * 
     * @see java.lang.Object#toString()
     */
    @Override
    public String toString() {
        return "Runner [nodeRef=" + nodeRef + ", username=" + username + ", name=" + name + ", firstName=" + firstName
                + ", startDate=" + startDate + ", runningDistance=" + runningDistance + ", runningCount="
                + runningCount + ", cyclingDistance=" + cyclingDistance + ", cyclingCount=" + cyclingCount
                + ", swimmingDistance=" + swimmingDistance + ", swimmingCount=" + swimmingCount + ", runPoint="
                + runPoint + ", runCount=" + runCount + ", historyNodeRef=" + historyNodeRef + "]";
    }

    /**
     * @return the nodeRef
     */
    public NodeRef getNodeRef() {
        return nodeRef;
    }

    /**
     * @param nodeRef
     *            the nodeRef to set
     */
    public void setNodeRef(NodeRef nodeRef) {
        this.nodeRef = nodeRef;
    }

    /**
     * @return the username
     */
    public String getUsername() {
        return username;
    }

    /**
     * @param username
     *            the username to set
     */
    public void setUsername(String username) {
        this.username = username;
    }

    /**
     * @return the name
     */
    public String getName() {
        return name;
    }

    /**
     * @param name
     *            the name to set
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * @return the firstName
     */
    public String getFirstName() {
        return firstName;
    }

    /**
     * @param firstName
     *            the firstName to set
     */
    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    /**
     * @return the startDate
     */
    public Date getStartDate() {
        return startDate;
    }

    /**
     * @param startDate
     *            the startDate to set
     */
    public void setStartDate(Date startDate) {
        this.startDate = startDate;
    }

    /**
     * @return the runningDistance
     */
    public Double getRunningDistance() {
        return runningDistance;
    }

    /**
     * @param runningDistance
     *            the runningDistance to set
     */
    public void setRunningDistance(Double runningDistance) {
        this.runningDistance = runningDistance;
    }

    /**
     * @return the runningCount
     */
    public Integer getRunningCount() {
        return runningCount;
    }

    /**
     * @param runningCount
     *            the runningCount to set
     */
    public void setRunningCount(Integer runningCount) {
        this.runningCount = runningCount;
    }

    /**
     * @return the cyclingDistance
     */
    public Double getCyclingDistance() {
        return cyclingDistance;
    }

    /**
     * @param cyclingDistance
     *            the cyclingDistance to set
     */
    public void setCyclingDistance(Double cyclingDistance) {
        this.cyclingDistance = cyclingDistance;
    }

    /**
     * @return the cyclingCount
     */
    public Integer getCyclingCount() {
        return cyclingCount;
    }

    /**
     * @param cyclingCount
     *            the cyclingCount to set
     */
    public void setCyclingCount(Integer cyclingCount) {
        this.cyclingCount = cyclingCount;
    }

    /**
     * @return the swimmingDistance
     */
    public Double getSwimmingDistance() {
        return swimmingDistance;
    }

    /**
     * @param swimmingDistance
     *            the swimmingDistance to set
     */
    public void setSwimmingDistance(Double swimmingDistance) {
        this.swimmingDistance = swimmingDistance;
    }

    /**
     * @return the swimmingCount
     */
    public Integer getSwimmingCount() {
        return swimmingCount;
    }

    /**
     * @param swimmingCount
     *            the swimmingCount to set
     */
    public void setSwimmingCount(Integer swimmingCount) {
        this.swimmingCount = swimmingCount;
    }

    /**
     * @return the runPoint
     */
    public Double getRunPoint() {
        return runPoint;
    }

    /**
     * @param runPoint
     *            the runPoint to set
     */
    public void setRunPoint(Double runPoint) {
        this.runPoint = runPoint;
    }

    /**
     * @return the runCount
     */
    public Integer getRunCount() {
        return runCount;
    }

    /**
     * @param runCount
     *            the runCount to set
     */
    public void setRunCount(Integer runCount) {
        this.runCount = runCount;
    }

    /**
     * @return the historyNodeRef
     */
    public NodeRef getHistoryNodeRef() {
        return historyNodeRef;
    }

    /**
     * @param historyNodeRef
     *            the historyNodeRef to set
     */
    public void setHistoryNodeRef(NodeRef historyNodeRef) {
        this.historyNodeRef = historyNodeRef;
    }

}
